A typical communications network includes a lot of different types of network devices. For example, a typical communications network may include host devices, which act as the source or destination of a particular flow of traffic, routers and/or switches, which act to forward traffic flows toward their appropriate destinations, and security devices, which provide, for example, firewall or other security functionality. These different types of network devices may be interconnected via links.
In some instances, a link between a pair of network devices may fail or a network device may fail. In those instances, it is important that the communications network be able to continue to route traffic. Therefore, some networks include redundancy. For example, a second network device may act as a backup for a first network device. If any part of the first network device fails, the entire first network device may failover to the second network device. As such, it is important that the second network device be ready to handle this failover.
The first network device (also called a “master device”) may include a session table that includes entries for sessions supported by the master device. The second network device (also called a “backup device”) may include its own session table that includes entries for sessions supported by the master device. When a session is created on the master device, the master device may create an entry in its session table and may set a session timer for the session. The master device may also send a create session message to the backup device, which causes the backup device to create the same session in the backup device's session table. As new packets arrive at the master device for the session, the master device may refresh its session timer and transmit a refresh message to the backup device. Due to the high volume of traffic handled by the master device, there are instances where the refresh message may become lost and not reach the backup device and no reliable transmission protocol currently exists to cover the loss. In this case, the backup device may prematurely close a session that is still supported by the master device. Thus, if the master device crashes and a session supported by the master device is not contained in the session table of the backup device, the backup device may need to be restarted to update its session table, which may interrupt ongoing communication sessions.